package org.zp.mapper;

import java.sql.Connection;
import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.zp.pojo.AdminInfo;
/**
 * 
 * @FileName AdminInfoMapper.java
 * @author zp
 * @package 2020年7月2日
 * @TODO 数据访问对象-用户信息
 */
public interface AdminInfoMapper {
	/**
	 * 通过用户名和密码查询用户信息	
	 * @param name 用户名
	 * @param pwd 密码
	 * @return 用户对象否则为null
	 */
	AdminInfo selectByNameAndPwd(@Param("name") String name,@Param("pwd")String pwd);
	/**
	 * 获取管理员列表
	 * @return
	 */
	List<AdminInfo> selectAdmin();
	/**
	 * 多条件查询
	 * @param name
	 * @param role
	 * @param strart
	 * @param end
	 * @return
	 */
	List<AdminInfo> selectASPPAdmin(@Param("name") String name, @Param("role") Long role, @Param("strart") String strart, @Param("end") String end);
	/**
	 * 修改状态
	 * @param aid
	 * @param iStatus
	 * @return
	 */
	Integer updateAdminState(@Param("aid") int aid, @Param("state") int iStatus);
	/**
	 * 删除管理员
	 * @param aid
	 * @return
	 */
	Integer deleteAdmin(@Param("aid") int aid);
	/**
	 * 重置密码
	 * @param aid
	 * @return
	 */
	Integer newpwd(@Param("aid") int aid);
	/**
	 * 管理员添加
	 * @param a
	 * @return
	 */
	Integer insertAdmin(@Param("a") AdminInfo a);
	/**
	 * 修改管理員資料
	 * @param aid
	 * @param aName
	 * @param aPwd
	 * @param cPwd
	 * @param uAccount
	 * @return
	 */
	Integer updateAdmindate(
			@Param("aid") Long aid, 
			@Param("aName") String aName, 
			@Param("aPwd") String aPwd, 
			@Param("uAccount") String uAccount);
	/**
	 * 获得列表
	 * @return
	 */
	List<AdminInfo> showAdmin();
	/**
	 * 根据id获得管理员对象
	 * @param aid
	 * @return
	 */
	AdminInfo getAdminByAid(@Param("aid") Long aid);
	/**
	 * 通过账号密码获得对象
	 * @param account
	 * @param pwd
	 * @return
	 */
	AdminInfo checkAdminInfo(@Param("account") String account, 
			@Param("pwd") String pwd);

	
	
}
